#!/bin/bash
REG_URL=10.246.1.29:5000/devopsmsg
LOG=tcp://10.247.3.29:514
#根据JOB_NAME生成版本号
#根据时间生成版本号
TAG=$REG_URL/$JOB_NAME:`date +%y%m%d-%H-%M`
#使用Dockerfile 文件打包 
docker build -t  $TAG -f $WORKSPACE/DockerfileMsg $WORKSPACE/.
docker push   $TAG
docker rmi $TAG
#如果版本号相同执行滚动升级
#如果版本号不同创建新的容器
#todo rollback
if docker service ls |grep -i $JOB_NAME;then
    #--force for docker version > 1.12
    #docker service update --force --image $TAG $JOB_NAME
    # docker service update --image $TAG $JOB_NAME
    docker service update \
    --log-driver syslog \
    --log-opt syslog-address=$LOG \
    --log-opt tag="{{.Name}}/{{.ID}}" \
    --update-parallelism 1  \
    --update-delay 5s \
    --update-failure-action continue \
    --image $TAG \
    $JOB_NAME  
else
    docker volume create devopsmsg_log
    docker service create --replicas 1 --name $JOB_NAME --mount \
    type=volume,source=devopsmsg_log,target=/home/dr-peng/server/logs \
    --log-driver syslog \
    --log-opt syslog-address=$LOG \
    --log-opt tag="{{.Name}}/{{.ID}}" \
    --update-parallelism 1 \
    --update-delay 5s \
    --update-failure-action continue \
    $TAG
fi
